package cool.mtc.minghe.service.service.sys.menu;

import cool.mtc.core.page.PageData;
import cool.mtc.minghe.data.model.sys.menu.dto.MenuDTO;
import cool.mtc.minghe.data.model.sys.menu.dto.MenuDictDTO;
import cool.mtc.minghe.data.model.sys.menu.dto.MenuListDTO;
import cool.mtc.minghe.data.model.sys.menu.form.MenuForm;
import cool.mtc.minghe.data.model.sys.menu.query.MenuQuery;
import cool.mtc.minghe.service.service.BaseService;

import java.util.List;

/**
 * @author 明河
 */
public interface MenuService extends BaseService {

    long insert(MenuForm form);

    void update(MenuForm form);

    void delete(Long id);

    PageData<MenuListDTO> pageList(MenuQuery query);

    MenuDTO info(Long id);

    List<MenuListDTO> list(MenuQuery query);

    List<MenuDictDTO> dictList();

    List<MenuListDTO> currentList();
}
